/**
 * 
 */
package com.gosophia.conferenceManagement;

import java.util.HashMap;

import com.gosophia.conferenceManagement.jbpm.NodeConfiguration;

/**
 * 功能：会议系统所有配置信息类
 * 
 * @author zhangdongsheng
 * @since 2011-3-24 Copyright (c) 2010 Gosophia corporation All Rights Reserved
 */
public class ConferenceConfiguration {
    
    public static String CONFERENCE_TYPE ="conferenceType";
    public static String CONFERENCE_MODEL ="conferenceModel";
    
    public static String NO_APPLICATION_CONFERENCE="noApplicationConference";
    public static String NEED_APPLICATION_CONFERENCE="applicationConference";
    
    public static String SMALL_TYPE_CONFERENCE ="smallTypeConference";
    public static String MIDDLE_TYPE_CONFERENCE ="middleTypeConference";
    public static String LARGE_TYPE_CONFERENCE ="largeTypeConference";
    /**会议申请指定的会议承办人*/
    public static String CONFERENCE_APP_ASSIGN="conference_undertaker";
    
    public final Long DEFAULT_CONFERENCEDATAVALEID =1009L;
    public final String DEFAULT_CONFERENCEDATAVALUEKEY ="hygl";
    public final String DEFAULT_CONFERENCEDETAILURL ="/jsp/meeting/DefaultMissionDetail.jsp";
    
    /**任务处理后默认的状态*/
    public final String DEFAULT_JOB_STATUS_AFTER_HANDLED ="已处理";

    
    private HashMap<String,NodeConfiguration> nodeConfigurations;// 流程图节点的配置
   
    //用户动作和jbpm中定义的transition的对应关系 映射
    private HashMap actionTransitionMapping ;
    
    private String conferenceDataValueKey;// conference 流程 datavalue的key
    private Long conferenceDataValeId;// conference 流程dataValue的id
    private String conferenceMissionDetailURL;
    
    public String getConferenceDataValueKey() {
        return conferenceDataValueKey;
    }

    

    public void setConferenceDataValueKey(String conferenceDataValueKey) {
        this.conferenceDataValueKey = conferenceDataValueKey;
    }

    public Long getConferenceDataValeId() {
        if(conferenceDataValeId==null)return DEFAULT_CONFERENCEDATAVALEID;//如果为空，返回默认值
        return conferenceDataValeId;
    }

    public void setConferenceDataValeId(Long conferenceDataValeId) {
        this.conferenceDataValeId = conferenceDataValeId;
    }

    public String getConferenceMissionDetailURL() {
        if(conferenceMissionDetailURL==null)return DEFAULT_CONFERENCEDETAILURL;
        return conferenceMissionDetailURL;
    }

    public void setConferenceMissionDetailURL(String conferenceMissionDetailURL) {
        this.conferenceMissionDetailURL = conferenceMissionDetailURL;
    }

    public HashMap getActionTransitionMapping() {
        if(actionTransitionMapping==null)return new HashMap();
        return actionTransitionMapping;
    }

    public void setActionTransitionMapping(HashMap actionTransitionMapping) {
        this.actionTransitionMapping = actionTransitionMapping;
    }



    public HashMap<String, NodeConfiguration> getNodeConfigurations() {
        if(nodeConfigurations==null)return new HashMap<String, NodeConfiguration>();
        return nodeConfigurations;
    }



    public void setNodeConfigurations(
            HashMap<String, NodeConfiguration> nodeConfigurations) {
        this.nodeConfigurations = nodeConfigurations;
    }

 

}
